package com.fivefu.core.skyeye.event.services;

import com.fivefu.core.skyeye.event.entity.DbAiRedisStream;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * redis队列消息读取 服务类
 * </p>
 *
 * @author 
 * @since 2022-08-16 09:48:40
 */
public interface DbAiRedisStreamService extends IService<DbAiRedisStream> {

    /**
     * 通过记录编号查询消息
     * @param recordID
     * @return
     */
    DbAiRedisStream queryRedisStreamByRecordID(String recordID);

    /**
     * 新增消息记录
     * @param recordID
     * @param streamName
     * @param streamValue
     */
    Long insertRedisStream(String recordID, String streamName, String streamValue);

    /**
     * 编辑消息记录
     * @param id 主键编号
     * @param type 类型
     * @param cvId 场景编号
     * @param eventId 案卷编号
     */
    void updateRedisStream(Long id, String type, Integer cvId, Long eventId);

    /**
     * 变更消息记录状态
     * @param id 主键编号
     * @param status 是否成功(0否1是)
     */
    void updateRedisStreamStatus(Long id, Integer status);

    /**
     * 通过状态查询消息集合
     * @param status 是否成功(0否1是)
     * @return
     */
    List<DbAiRedisStream> queryRedisStreamListByStatus(Integer status);

}
